#!/usr/bin/env python
# -*- coding: utf-8 -*-

"""
生产环境配置

我这种是一种方式，简单直观
服务器上设置 ENV 环境变量

还有一种是服务一个固定路径放一个配置文件如 /etc/conf 下 xxx.ini 或者 xxx.py文件
然后项目默认读取 /etc/conf 目录下的配置文件，能读取则为生产环境，
读取不到则为开发环境，开发环境配置可以直接写在代码里面(或者配置ide环境变量)


"""

import os
from typing import Optional

from pydantic import BaseSettings


class Settings(BaseSettings):
    # 生产模式配置
    DEBUG: bool = False
    # 项目文档
    TITLE: str = "标题"
    DESCRIPTION: str = "描述"
    # 文档地址 默认为docs
    DOCS_URL: str = ""
    # 文档关联请求数据接口
    OPENAPI_URL: str = ""

    REDOC_URL: Optional[str] = ""

    # token过期时间 分钟
    ACCESS_TOKEN_EXPIRE_MINUTES: int = 60 * 24
    # 生成token的加密算法
    ALGORITHM: str = "HS256"

    # 生产环境保管好 SECRET_KEY
    SECRET_KEY: str = "aeq)s(*&(&)()WEQasd8**&^9asda_asdasd*&*&^+_sda"

    # 项目根路径
    BASE_PATH: str = os.path.dirname(
        os.path.dirname(os.path.dirname((os.path.abspath(__file__))))
    )
    WORKERS = 2

    PROJECT_NAME = "bid_item"


settings = Settings()
